1. Field of the Invention
The present invention relates to the field of digital communications.
2. Prior Art
In a digital communications system, the function of the demodulator is to extract the digital information from a modulated analog waveform. In the past, the demodulation function has been accomplished using analog signal processing techniques (mixers, filters, phase-locked-loops, etc.). With the advent of high-speed digital technology, it now possible to perform much of the demodulation function using discrete-time or digital signal processing (DSP) techniques. Where an analog demodulator must be custom-tailored to the specific characteristics of a particular signal to be demodulated, a digital demodulator allows great flexibility in reprogramming to meet the requirements of a variety of systems having different modulation types, channel characteristics, data rates, etc.
In a digital demodulation system, the process typically begins by sampling the analog waveform at a rate F.sub.s samples/sec and digitizing its amplitude using an A/D (analog-to-digital) converter. Then the digitized samples are processed through various mathematical operations to extract the required information bits. The processing operations usually include some type of filtering to compensate for the effects of channel conditions or modulation technique, as well as for the artifacts introduced by the sampling process itself. It is usually necessary to recover the timing (symbol rate) of the information bits from the received signal because the precise timing is not known at the receiver. This means that the symbol rate may not necessarily be related to the sampling rate. Furthermore, the symbol rate may not be constant over time; it may vary somewhat due to imperfections in the timebases at the transmitter and receiver or relative motion between the transmitter and receiver.
According to the Nyquist criterion, the sampling rate must be at least twice the highest frequency content of the desired signal. In a digital system, the sampling rate must be at least equal to the symbol rate, or greater, for better performance. Typically, in current practice, a sampling rate is chosen which is an integer multiple N of the symbol rate, so that it is easy to reduce or decimate the sampling rate by retaining only every Nth sample and throwing out all others. If a range of symbol rates is desired, then there must be circuitry to generate a range of corresponding sampling clocks. Since the exact timing of the received symbols is generally not known, the sampling clock circuitry must also be capable of slewing in time to adjust the sampling instant to the optimal point.
The decimation process also requires a filter that selects the desired signal components. The filtering can always be done before the decimation but this requires a very large computation to be performed at the higher sampling rate. There are well-known methods in which the decimation-by-N operation can be done before the filter (predecimation) so that a smaller computation involving only every Nth sample can be performed at the lower decimated rate. In order to achieve the greatest computational efficiency, certain restrictions must be followed, mainly that such a filter can be designed to work only for one particular decimation ratio, and there is no provision for adjusting the sampling instant.
Floyd M. Gardner, "Interpolation in Digital Modems--Part I: Fundamentals" (Floyd M. Gardner, IEEE Transactions on Communications, Vol. 41, No. 3, March 1993) describes an embellishment to the predecimation method, in which a numerically-controller oscillator (NCO) is used to select which samples to process and to generate or look up the appropriate coefficients. This modification to the basic method allows for non-integral decimation ratios and for the slewing in time of the apparent sampling instant, while preserving the computational efficiency of predecimation. But since the samples are predecimated, the filter must be designed for the particular decimation ratio. If a selection of different ratios is desired, a different set of coefficients must be provided for each ratio. The number of taps, or length, of the filter may need to change too, to maintain performance requirements over the range of decimation ratios.